const validateRules = {
    required(trigger, message, type) {
        return {
            type: type || 'string',
            required: true,
            message: message || '必填项不能为空',
            trigger: trigger || 'blur'
        };
    },
    maxLength(length, trigger) {
        return {
            type: 'string',
            max: length,
            message: `长度不超过${length}个字符`,
            trigger: trigger || 'blur'
        };
    },
    nameRegx01() {
        return {
            type: 'string',
            pattern: /^[\u4E00-\u9FA5A-Za-z][\u4E00-\u9FA5A-Za-z0-9_]*$/,
            message: '输入内容必须为中文、英文、数字、下划线，且中文或英文开头',
            trigger: 'change'
        }
    },
    nameRegx02() {
        return {
            pattern: /^[A-Za-z][A-Za-z0-9_]*$/,
            message: '输入内容必须为英文、数字、下划线，且英文开头',
            trigger: 'change'
        }
    },
    nameRegx03() {
        return {
            pattern: /^[a-z][a-z0-9_]+$/,
            message: '输入内容必须为小写英文、数字、下划线，且英文开头',
            trigger: 'change'
        }
    },
    // numRegx(){
    //     return {
    //         pattern: /^[1-9][0-9]*$/,
    //         message: '输入值必须为正整数',
    //         trigger: 'change'
    //     }
    // },
    numRegx(rule, value, callback) {
        if (value) {
            if (new RegExp(/^[1-9][0-9]*$/).test(value) && value >= 0 && value <= 3600) {
                callback()
            } else {
                callback(new Error('请输入正整数,范围为1~3600,正整数'))
            }
        } else {
            callback()
        }
    }
}

export {
    validateRules
};